#ifndef _MEDIA_LIB_H_
#define _MEDIA_LIB_H_

#include <proto.h>
#include <stdint.h>
#include <sys/types.h>

struct mlib_listentry_st {  // 每个频道概览信息
    chnid_t chnid;  // 频道号
    char* desc; // 描述信息
};

/*
 \brief 获取所有频道的概览信息
 \param ptr:要存放的频道概览信息的地址
 \param list_size:频道个数的地址 
*/
int mlib_getchnlist(struct mlib_listentry_st** ptr, int* list_size);

int mlib_freechnlist(struct mlib_listentry_st* ptr);

/*
 \brief 根据频道号和令牌个数读取对应字节数的数据
 \param chnid:协议里规定的频道号
 \param buf:要写入的地址
 \param size:令牌个数 
*/
ssize_t mlib_readchn(chnid_t chnid, void* buf, size_t size);


#endif